<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    
</body>
<script>
    //promise解决回调地狱问题
    //Promise是ES6的新语法
    /*promise内部的代码运行的结果以三种状态来表示
    unfinished：不完成（初始状态）
    finnished，完成
    reject,失败*/

    
    //语法：new promise((resolve,reject)=>{})
    new Promise((resolve,reject)=>{
        //这里可以写任何Js代码
        //写在这里的代码可以看作一个任务（或一个功能）
        // 这个任务最终必须有一个结果
        //想要在这里更改promise对象的状态，必须使用resolve和reject
        // 其中如果是调用resolve函数，promise状态会立即变为finished
        // 如果是调用reject函数，promise状态会立即变为reject
        setTimeout(()=>{
            // resolve(888888)//当前promise状态就变为finished成功，会立即调用then方法的回调函数
            reject(888888)//当前promise状态就变为reject失败，会立即调用catch方法回调函数

        },5000)
    }).then((res)=>{
        console.log("promise状态变为finished成功",res);

    }).catch((err)=>{
        console.log("状态变为失败",err);
    })
</script>
</html>